運用先前學到的知識來解決一些基本的數學和程式設計問題。
lst = [] # 初始化一個空的列表,用來儲存質數
for i in range(1, 100): # 外層迴圈,i 從 1 遍歷到 100
b = 0 # 計數器 b,用來計算 i 的因數個數
for j in range(1, i+1): # 內層迴圈,j 從 1 遍歷到 i,檢查 i 是否能被 j 整除
if i % j == 0: # 如果 i 可以被 j 整除
b += 1 # 將計數器 b 加 1,代表找到一個因數
if b == 2: # 如果 i 的因數剛好只有兩個,說明 i 是質數(只能被 1 和自己整除)
lst.append(i) # 將質數 i 加入列表 lst
print(f'在整數中<100的質數總共有{len(lst)}個,分別是{lst}')
# 輸出質數的總數以及質數列表
n = int(input('輸入一個整數: ')) # 從使用者輸入一個整數 n
a = 0 # 初始化變數 a,用來儲存總和結果
for i in range(2, n+1): # 迴圈從 2 開始,直到 n(包括 n)
a += 1 / (2 * i - 1) # 根據公式累加 1 / (2*i - 1) 到變數 a 中
print('輸出: %.4f' % a) # 輸出總和 a,格式化為小數點後四位
範例:
n = int(input('輸入一個整數: ')) # 從使用者輸入一個整數 n
for i in range(1, n*2): # 外層迴圈,i 從 1 到 n*2-1,控制菱形的行數
# 前半部分:從 1 到 n 行,構建菱形的上半部分
if i <= n:
for j in range(n, i, -1): # 打印空格,讓星號對齊到中間位置
print(' ', end='')
for k in range(0, i + (i - 1)): # 打印星號,根據當前行數決定星號的數量
print('*', end='')
# 後半部分:從 n+1 到 n*2-1 行,構建菱形的下半部分
else:
for j in range(n, i): # 打印空格,讓下半部分的星號保持對齊
print(' ', end='')
for k in range((2 * (i - n)), 2 * n - 1): # 打印星號,數量隨行數遞減
print('*', end='')
print() # 每列打印完後換行